Support for Subtyping and Code Re-use in Timor
نویسندگان
چکیده
Unlike most object oriented programming languages Timor, which has been designed to support component development, replaces the class construct with separate constructs for defining types and their implementations (which are not types). It also distinguishes between behaviourally conforming subtyping and the inclusion of behaviourally deviant interfaces in the definition of derived types. The separation of types and implementations simplifies a separation of subtyping and subclassing, facilitating the re-use of implementations of one type to implement other, unrelated types. A further technique allows a type to be mapped onto an unrelated type with different method names, such that the latter's implementations can also be re-used to implement the former. The paper concludes by outlining a substantial example based on the Timor Collection Library.
منابع مشابه
Inheriting from a Common Abstract Ancestor in Timor
A particular case of multiple inheritance, involving a family of related types with a common abstract ancestor, is examined, and a substantial example, involving five abstract and nine concrete collection types, is presented. The separation of types and implementations, together with the separation of subtyping and code re-use, results in a clearly structured and easily intelligible type librar...
متن کاملDrug Resistance Profile and Subtyping of HIV-1 RT Gene in Iranian Patients under Treatment
Identification of drug resistant mutations is important in the management of HIV-1 infected patients. The aim of the current study was to evaluate drug resistance profile of RT gene and assess subtype among HIV-1 circulating strains and intensification of physician’s options for the best therapy. HIV-1 RNA of 25 sampleswas extracted from plasma and RT Nested- PCR was performed and the fin...
متن کاملAn Interval-Based Inference of Variant Parametric Types
Variant parametric types represent the successful integration of subtype and parametric polymorphism to support a more flexible subtyping for Javalike languages. A key feature that helps strengthen this integration is the use-site variance. Depending on how the fields are used, each variance denotes a covariant, a contravariant, an invariant or a bivariant subtyping. By annotating variance prop...
متن کاملThesis Proposal
Nominal subtyping and structural subtyping each have their own strengths and weaknesses. Nominal subtyping allows programmers to explicitly express design intent, and, when types are associated with run-time tags, enables efficient run-time type tests (e.g., downcasts) and external/multimethod dispatch. On the other hand, structural subtyping is flexible and compositional, allowing unanticipate...
متن کاملBehavioral Subtyping in Object-Oriented Languages
Modularity and code reuse are two important features of object-oriented programming. Modularity means that adding new components does not require reveri cation or respeci cation of existing components. A common form of reuse in objectoriented programs is to add new subtypes to existing types and to invoke already existing procedures with objects of these new types. In such cases, behavior of pr...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2001